﻿using Medical.Domain.Base;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Medical.Domain.RecoveryCleaning
{
    /// <summary>
    /// 消毒登记实体
    /// </summary>
    public class DisinfectionRegistration : BaseEntity
    {
        /// <summary>
        /// 消毒批号
        /// </summary>
        public string BatchNumber { get; set; } = null!;

        /// <summary>
        /// 消毒设备编号
        /// </summary>
        public int EquipmentId { get; set; }

        /// <summary>
        /// 消毒人
        /// </summary>
        public string Operator { get; set; } = null!;

        /// <summary>
        /// 开始时间
        /// </summary>
        public DateTime StartTime { get; set; } = DateTime.Now;

        /// <summary>
        /// 消毒方式
        /// </summary>
        public string DisinfectionMode { get; set; } = null!;

        /// <summary>
        /// 消毒温度
        /// </summary>
        public float DisinfectionTemperature { get; set; }

        /// <summary>
        /// 消毒时长（分钟）
        /// </summary>
        public int DisinfectionDuration { get; set; }

        /// <summary>
        /// 消毒状态（0=未完成，1=已完成）
        /// </summary>
        public int Status { get; set; } = 0;

        /// <summary>
        /// 完成人
        /// </summary>
        public string CompletionOperator { get; set; } = null!;

        /// <summary>
        /// 完成时间
        /// </summary>
        public DateTime? CompletionTime { get; set; }

        /// <summary>
        /// 消毒效果
        /// </summary>
        public string DisinfectionEffect { get; set; } = null!;

        /// <summary>
        /// 干燥操作人
        /// </summary>
        public string DryingOperator { get; set; } = null!;

        /// <summary>
        /// 干燥方式
        /// </summary>
        public string DryingMode { get; set; } = null!;

        /// <summary>
        /// 干燥温度
        /// </summary>
        public float DryingTemperature { get; set; }

        /// <summary>
        /// 干燥时间
        /// </summary>
        public DateTime? DryingTime { get; set; }

        /// <summary>
        /// 干燥时长（分钟）
        /// </summary>
        public int DryingDuration { get; set; }

        /// <summary>
        /// 物品IDs
        /// </summary>
        public List<int> ItemIds { get; set; }

    }
}
